3 mai 2020 0 Par Mairien Anthony
Aujourd’hui découverte du protocole OpenPGP et chiffrement de mails via l’extension Enigmail sur Thunderbird.
Vous avez sûrement déjà entendu parlé de PGP ou de la norme OpenPGP, ainsi que de toutes les choses qu’on entend sur le chiffrement de mails. Nous allons voir ici qu’est-ce qu’il en est au juste et comment chiffrer ensuite ses mails sur Thunderbird. Commençons de suite !
Résumons un peu tout ça :
•.PGP, c’est un logiciel de chiffrement propriétaire créé au début des années 1990 par Philip Zimmermann. Il appartient aujourd’hui à la société bien connue Symantec. PGP utilise une méthode de chiffrement symétrique ET asymétrique, permettant donc une très bonne sécurité en plus d’une exécution très rapide (nous en reparlerons plus bas). Il permet donc de chiffrer des mails notamment, mais aussi des fichiers textes, des dossiers, ou encore des partitions de disque.
•.OpenPGP, c’est une norme ratifiée par l’IETF (Internet Engineering Task Force) qui propose donc un format de messages/signatures/certificats communs pour les logiciels de chiffrement (comme PGP notamment, ou encore GNUPG).
•.GnuPG, c’est l’équivalent du logiciel PGP mais en version Open-Source, et c’est celui-ci que nous allons utiliser. Il prend en charge la norme openPGP donc aucun soucis à ce faire de ce côté là.
Alors déjà, non. Une bonne fois pour toutes, on ne dit pas crypter, mais CHIFFRER ! Cela dit la question est tout à fait légitime, comment PGP permet de sécuriser nos e-mails ?
Et bien c’est en réalité assez simple… comme dit en introduction, PGP est un logiciel de chiffrement dit hybride, car il utilise le chiffrement asymétrique (clé privée/publique, on connaît) mais aussi symétrique.
Donc voici ce qui se passe quand une personne décide de chiffrer un e-mail avec PGP :
•.PGP créer une clé aléatoire aléatoire utilisable une seule fois, et s’en sert pour chiffrer le message via un algorithme symétrique ;
•.Ensuite, PGP chiffre cette clé aléatoire via un alogirthme asymétrique cette fois, en utilisant la clé publique du destinataire ;
•.Le message part chez le destinataire en étant chiffré, et accompagnié de la clé servant à le déchiffrer, étant elle-même chiffrée !
Cela n’est peut être pas plus clair pour vous, alors voici quelques schémas tirés d’OpenClassrooms dont je me suis librement inspiré (car c’est assez difficile de simplifier ce qui l’est déjà un maximum, je vous conseille d’aller voir ce lien si vous voulez vraiment en savoir plus !) :
Et lorsqu’un utilisateur va reçevoir un message qu’il souhaite déchiffrer, rien de plus simple :
•.PGP va déchiffrer la clé de chiffrement accompagnant le message avec la clé privée du destinataire ;
•.Puis ensuite déchiffrer le message lui-même via la clé déchiffrée ;
Et bien c’est très simple, il s’agit d’un module de chiffrement (une extension donc) pour Thunderbird qui est donc utilisable sous Windows/Mac/Linux et qui va simplement avoir pour fonction de faire le lien avec le logiciel GnuPG que nous allons aussi installer.
On peut résumer cela comme ça : GnuPG permet de réaliser tout ce que l’on a vu plus haut, au même titre que PGP mais en version logiciel libre, mais fonctionne en lignes de commandes, ce qui peut être assez complexe pour les novices. C’est là qu’intervient Enigmail, qui est en quelque sorte une GUI pour GnuPG.
Voilà, la partie théorique est désormais derrière nous, ouf ! On va donc pour commencer à installer GnuPG en premier lieu, en sachant que si vous êtes sous GNU/Linux, il y a de fortes chances pour que ce dernier soit installé par défaut (selon votre distribution bien entendu). Sinon, si vous ne l’avez et selon votre OS :
•.Windows, télécharger Gpg4win ici ;
•.MacOS, télécharger MacGPG ici ;
•.GNU/Linux, dépend de votre distrib’ (apt-get, dnf install, pacman -S…) ;
Concernant l’installation, c’est du classique suivant/suivant, rien de nouveau à ce niveau là. Veillez simplement à ne cocher que GnuPG, nous n’avons pas besoin des autres composants (le fameux addon pour Outlook se nomme GpgOL d’ailleurs, installable directement ici) :
Ensuite nous pouvons passer à l’installation d’Enigmail, ici ce sera donc sur le logiciel Thunderbird, mais sachez qu’il existe aussi une version pour Outlook (mais bon, tout le monde sait qu’Outlook c’est le mal pas vrai?).
Pour l’installer c’est donc la même chose que pour n’importe quelle autre extension (ou presque), on entre le nom de l’addon et on installe :
Une fois redémarré, vous aurez directement un petit pop-up vous indiquant si oui ou non GnuPG est installé (c’est le cas ici) :
Ensuite en nous rendant ensuite sur la droite dans le menu de Thunderbird on peut cliquer sur l’onglet Enigmail :
On clique donc sur Assistant de configuration. Ici Enigmail va en premier lieu vérifier si GnuPG est installé, puis il va soit vous proposer de créer une paire de clés, soit celle-ci sera déjà générée pour vous (c’était mon cas personnellement), vous n’avez donc plus qu’à cliquer sur Appliquer mes clés et le tour est joué ! Si ce n’est pas le cas, vous devrez simplement suivre les étapes pour générer vos clés, en choisissant une passphrase etc, du classique.
A noter que vous pouvez tout à fait exporter ces clés par la suite, privées ou publiques, et donc les importer sur un autre ordinateur (j’ai testé de les ré-importer sur un ordinateur sous Ubuntu 20.04 et aucun soucis !).
Et on touche enfin au but ! Nous allons pouvoir vérifier si tout ça est bien en place…
De prime abord il convient d’envoyer un mail non chiffré en rajoutant en pièce-jointe notre clé publique, ici la personne à qui j’envoie mon mail l’a déjà, donc je peux directement lui envoyer un mail chiffré :
On peut voir aux deux icônes ci-dessus que le mail sera chiffré et signé, c’est tout bon !
Au moment d’envoyer on obtient d’ailleurs ce joli petit avertissement de la part de Thunderbird, nous disant que d’ordinaire l’objet (l’intitulé donc) du mail n’est pas chiffré, mais qu’ici Enigmail va essayer de le remplacer par du faux texte. Toujours bon à prendre en considération !
Et si ensuite on vérifie auprès du destinataire…
C’est tout bon ! Le courrier a bien été déchiffré et on peut voir que la signature de l’expéditeur est bien valide !
Si vous désirez savoir comment joindre votre clé publique, rien de plus simple :
Ensuite la personne pourra facilement installer la clé, que ce soit via Thunderbird/Outlook si celle-ci a installé l’extension ou même via certains webmail (sur Protonmail par exemple, vous pouvez très facilement installer la clé publique contenue dans le mail reçu).
Et bien voilà, c’est à peu près tout… bien entendu cet article n’est pas complet à 100%, je ne vous ai pas parlé de la génération de clé avec la longueur de bits voulue ou encore comment envoyer sa clé publique sur un serveur de clés, mais je pense que désormais vous avez les bases pour pouvoir chiffrer vos mails et avoir la conscience (presque) tranquille. Je verrai pour éventuellement faire un prochain article par rapport à tout ça, à voir 🙂